import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

/*
 *   java.util.set接口 extends Collection 接口
 *   set接口特点：
 *       1、不允许存储重复的元素
 *       2、没有索引，没有带索引的方法，也不能使用普通for循环遍历
 *   java.util.HashSet 集合 implements Set接口
 *   HashSet特点:
 *       1、不允许存放重复的元素
 *       2、没有索引,没有带索引的方法,不能使用普通for循环遍历
 *       3、是一个无序的集合,存储和取出元素的顺序可能不一致
 *       4、底层是一个哈希表结构(查询的速度非常快)
 * */
public class Set01 {
    public static void main(String[] args) {
        Set<Integer> set = new HashSet<>();
        //add方法添加元素
        set.add(1);
        set.add(3);
        set.add(2);
        set.add(1);
        //使用迭代器遍历
        Iterator<Integer> iterator = set.iterator();
        while (iterator.hasNext()) {
            Integer next = iterator.next();
            System.out.println(next);
        }
        System.out.println("________________________");
        //使用增强for循环遍历
        for (Integer integer : set) {
            System.out.println(integer);
        }
        Set<String> stringSet = new HashSet<>();
        stringSet.add("重地");
        stringSet.add("通话");
        Iterator<String> iterator1 = stringSet.iterator();
        while (iterator1.hasNext()) {
            String next = iterator1.next();

            System.out.println(next);
        }

    }
}
